package com.atguigu.lease.app.service.impl;

import com.atguigu.lease.app.service.LoginService;
import com.atguigu.lease.common.util.PhoneValidateUtil;
import org.springframework.stereotype.Service;

/**
 * @author LOGIN
 * @title LoginServiceImpl
 * @create 2025/7/3 16:33
 * @description
 */
@Service
public class LoginServiceImpl implements LoginService {
    @Override
    public void getCode(String phone) {
        //1、手机号格式验证
        boolean ismobile = PhoneValidateUtil.isMobile(phone);
        if (ismobile) {
            throw new RuntimeException("手机号格式有错误");
        }
        //2、验证手机号获取验证码的频率和次数
        //2.1 2分钟内不能重复发送：防止表单重复提交
        //同一个手机哈皮客户端发送可能连续发送获取验证码的请求，要保证连续的相同请求 2分钟内只有一个可以被处理，其他的拒绝

        //2.2 一天不能超过5次

        //3、生成验证码
        //3.1 调用三方的短信api给手机发送短信

        //3.2将验证码缓存到redis（登陆时还需要使用：可以使用手机号当作key来缓存验证码）
        //验证码有效时间 115分钟

        //4、成功后 更新当前手机号的发送验证码的次数

    }
}
